<?php
class View_ProductProperty {
	/**
	 * Метод выводит список категорий в админке
	 * 
	 * @param array $arrProperties - массив свойств товаров
	 */
	public static function showAdminList(array &$arrProperties) {
		if(empty($arrProperties)) echo 'Дополнительных свойств нет';
		
		echo '<div class="admin-list">';
			foreach($arrProperties as $idProperty => $arrProperty) {
				echo '<div class="item">';
					echo '<a href="' . W_ADMIN . 'product_properties/edit/' . $arrProperty[0]['ID_product_property'] . '">' .  $arrProperty[0]['property_name'] . '</a>';
					echo '<div class="fr"><a href="' . W_ADMIN . 'product_property_values/add?id_property=' . $idProperty . '">Добавить значение</a></div>';
					echo '<div class="prop-values">';
						foreach($arrProperty as $arrPropertyValue) {
							echo '<div class="prop-val">';
								echo '<a href="' . W_ADMIN . 'product_property_values/edit/' .  $arrPropertyValue['ID_product_property_value'] . '">' . $arrPropertyValue['value_name'] . '</a>';
							echo '</div>';
						}
					echo '</div>';
				echo '</div>';
			}
		echo '</div>';
	}

	/**
	 * Выводит форму добавления/редактирвоания свойства товара
	 *
	 * @param ProductProperty $objProductProperty
	 */
	public static function showEditForm(ProductProperty $objProductProperty) {
		$objForm = new View_Form(array(
				'id' => 'property-edit-form',
				'left-width' => 180
		), $objProductProperty);
		
		$objForm->show();
			$objForm->textField(array('name' => 'property_name', 'text' => 'Название'));
			$objForm->hiddenField(array('name' => 'ID_product_property'));
			$objForm->submit();
		$objForm->close();
	}
	
	/**
	 * Выводит форму добавления/редактирования значения свойства товара
	 *
	 * @param ProductPropertyValue $objProductPropertyValue
	 */
	public static function showValueEditForm(ProductPropertyValue $objProductPropertyValue, $idProperty = null) {
		$objForm = new View_Form(array(
				'id' => 'property-value--edit-form',
				'left-width' => 180
		), $objProductPropertyValue);
		
		$objForm->show();
			$objForm->textField(array('name' => 'value_name', 'text' => 'Название'));
			$objForm->textField(array('name' => 'value_page_name', 'text' => 'Название страницы'));
			$objForm->textField(array('name' => 'url', 'text' => 'URL'));
			$objForm->textField(array('name' => 'meta_keywords', 'text' => 'Meta keywords'));
			$objForm->textField(array('name' => 'meta_description', 'text' => 'Meta description'));
			$objForm->hiddenField(array('name' => 'ID_product_property_value'));
			if($idProperty) $objForm->hiddenField(array('name' => 'ID_product_property', 'value' => $idProperty, 'noFromModel' => true));
			$objForm->submit();
		$objForm->close();
	}
	
	/**
	 * Выводит стрницу конкретного значение сявойства товаров
	 *
	 * @param ProductPropertyValue $objProductPropertyValue - объект начения свойства
	 * @param array $arrProducts - массив товаров
	 */
	public static function showPropertyValuePage(ProductPropertyValue $objProductPropertyValue, array $arrProducts) {
		if($objProductPropertyValue->getField('description')) {
			echo '<div class="cat-desc-slide">';
				echo  '<div class="cat-desc-wrap">';
					echo '<div class="cat-desc">';
						echo $objProductPropertyValue->getField('description');
					echo '</div>';
				echo '</div>';
				echo  '<div class="slide-handler fr"><div class="slide-arrow"></div></div>';
				echo '<div class="clear"></div>';
			echo '</div>';
		}
	
		if(empty($arrProducts)) echo 'В данной категории нет товаров.';
		else View_Product::showProductsList($arrProducts);
	}
}